/**
 * 为什么使用Performance
 *  + GC的目的是为了实现内存空间的良性循环
 *  + 良性循环的基石是合理使用内存空间
 *  + 时刻关注才能确定是否合理
 *  + Performance提供多种监控方式
 * 
 * 内存问题的外在表现
 *  + 页面出现延迟加载或经常性暂停，此时底层存在频繁的垃圾回收，有程序可能瞬间让内存爆掉
 *  + 页面持续性出现糟糕的性能表现，底层可能出现了内存膨胀，为了达到使用速度，可能会去申请一定的内存使用空间，但是这个内存大小远远超过了设备可提供大小
 *  + 页面的性能随时间延长越来越差，可能出现了内存泄露
 * 
 * 界定内存问题的标准
 *  + 内存泄露：内存使用持续升高
 *  + 内存膨胀：在多数设备上都存在性能问题
 *  + 频繁垃圾回收：通过内存变化图进行分析
 * 
 * 监控内存的几种方式
 *  + 浏览器任务管理器，其中有内存和JavaScript内存，内存指原生内存（DOM节点内存），变大说明DOM节点在不断创建，JavaScript内存中括号内为当前使用内存
 *  + Timeline时序图记录
 *  + 堆块照查找分离DOM
 *  + 判断是否存在频繁的垃圾回收
 * 
 * 堆快照查找分离DOM
 *  + 界面元素存活在DOM树上
 *  + 垃圾对象时的DOM节点，脱离了DOM树的节点
 *  + 分离状态的DOM节点，脱离了DOM树的节点，但是在JS中还有变量在引用（Detached HTMLLIELlement）
 * 
 * 判断是否存在频繁GC
 *  + GC工作时应用程序是停止的，频繁且过长的GC会导致应用假死，用户使用中会感知应用卡顿
 *  + Timeline中的内存使用曲线在短时间内频繁的上升下降
 *  + 任务管理器中的数据频繁的增加减小
 */
